
varying vec2 texture_coordinate; 
varying float radius;
uniform sampler2D sphere, depth;

void main()
{
    gl_FragColor = gl_Color * texture2D(sphere, texture_coordinate);
    gl_FragDepth = -texture2D(depth, texture_coordinate)[0] * radius + gl_FragCoord.z;
}

